
"""
    自己封装logging，封装日志成组件
    1.loggers:日志器，程序入口，别的文件响应调用日志
    2.handler：处理器，日志信息。显示
    3.formatter：格式器

"""
import logging


def mylog():
    # 创建日志器
    logger = logging.getLogger()
    # 设置级别
    logger.setLevel(logging.INFO)
    # 防止重复写日志，进行判断；如果logger.handlers为空则添加
    if not logger.handlers:
        # 创建处理器,控制台处理器
        sh = logging.StreamHandler()
        # 吧日志信息添加到控制台
        logger.addHandler(sh)
        # 创建文本处理器
        fh = logging.FileHandler("log1.txt",encoding='utf-8')
        # 吧日志信息写入到文本中
        logger.addHandler(fh)

        # 格式器 根据需要，fomatter1、fomatter2
        fmt1 = '%(asctime)s -%(filename)s[line:%(lineno)d] - %(message)s'
        fomatter1 = logging.Formatter(fmt1)
        fmt2 = '%(asctime)s -%(filename)s[line:%(lineno)d] - %(message)s'
        fomatter2 = logging.Formatter(fmt2)

        # 给控制台设置格式
        sh.setFormatter(fomatter1)
        fh.setFormatter(fomatter2)
    return logger
mylog().debug('debug信息')
mylog().info('info信息')





